import request from '@/utils/request'

/**
 * 知识库相关API
 */
export default {
  /**
   * 获取知识条目列表
   * @param {Object} params 查询参数
   * @param {string} params.title 标题关键字
   * @param {number} params.categoryId 分类ID
   * @param {number} params.pageNum 页码
   * @param {number} params.pageSize 每页数量
   * @returns {Promise} 请求结果
   */
  getKnowledgeList(params) {
    return request({
      url: '/knowledge/list',
      method: 'get',
      params
    })
  },

  /**
   * 获取单个知识条目详情
   * @param {number} id 知识条目ID
   * @returns {Promise} 请求结果
   */
  getKnowledgeDetail(id) {
    return request({
      url: `/knowledge/${id}`,
      method: 'get'
    })
  },

  /**
   * 添加知识条目
   * @param {Object} data 知识条目数据
   * @returns {Promise} 请求结果
   */
  addKnowledge(data) {
    return request({
      url: '/knowledge/add',
      method: 'post',
      data
    })
  },

  /**
   * 编辑知识条目
   * @param {number} id 知识条目ID
   * @param {Object} data 知识条目数据
   * @returns {Promise} 请求结果
   */
  updateKnowledge(id, data) {
    return request({
      url: `/knowledge/update`,
      method: 'post',
      data
    })
  },

  /**
   * 删除知识条目
   * @param {number} id 知识条目ID
   * @returns {Promise} 请求结果
   */
  deleteKnowledge(id) {
    return request({
      url: `/knowledge/delete/${id}`,
      method: 'get'
    })
  },

  /**
   * 批量删除知识条目
   * @param {Array} ids 知识条目ID数组
   * @returns {Promise} 请求结果
   */
  batchDeleteKnowledge(ids) {
    return request({
      url: '/knowledge/batch',
      method: 'post',
      data: ids
    })
  }
}